/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package hhf.flex.ascreator;

import hhf.flex.ascreator.exceptions.NoAnnotationClassException;
import hhf.flex.ascreator.exceptions.NoSuperClassException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
import java.util.Set;

/**
 *
 * @author HHFrancois
 */
public class ASEventExceptionCreator extends ASClassCreator {

	public ASEventExceptionCreator(String path, Class clazz, Map<String, Object> options) {
		super(path, clazz, options);
	}

	@Override
	protected String getASSuperClassName() throws NoSuperClassException {
		return "Event";
	}

	@Override
	@SuppressWarnings("unchecked")
	protected Collection<String> getASClassAnnotations() throws NoAnnotationClassException{
		Collection<String> annos = new ArrayList<String>();
		annos.add("[RemoteClass(alias=\"" + this._class.getName() + "\")]");
		return annos;
	}

	/**
	 * Retourne une liste d'imports par defaut.
	 * @return
	 */
	@Override
	protected Set<String> getASDefaultImports() {
		Set<String> imports = super.getASDefaultImports();
		imports.add("mx.messaging.events.Event");
		return imports;
	}
}
